package dispatcher

import (
	"regexp"

	"git.cloud.inspur.com/ichain/ichain-sdk-go/pkg/providers/ichain"
)

// BlockReg  区块的注册对象
type BlockReg struct {
	Filter  ichain.BlockFilter
	Eventch chan<- *ichain.BlockEvent
}

// FilteredBlockReg 过滤区块的注册对象
type FilteredBlockReg struct {
	Eventch chan<- *ichain.FilteredBlockEvent
}

// ContractReg 合约的注册对象
type ContractReg struct {
	ContractID  string
	EventFilter string
	EventRegExp *regexp.Regexp
	Eventch     chan<- *ichain.ContractEvent
}

// TxStatusReg 交易状态的注册对象
type TxStatusReg struct {
	TxID    string
	Eventch chan<- *ichain.TxStatusEvent
}
